<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:tns="http://webservices.groove.net/Groove/2.0/Events/" xmlns:c="http://webservices.groove.net/Groove/2.0/Core/" elementFormDefault="qualified" targetNamespace="http://webservices.groove.net/Groove/2.0/Events/" version="1.1" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:import schemaLocation="./Core.xsd" namespace="http://webservices.groove.net/Groove/2.0/Core/" />
  <xs:complexType name="EventData">
    <xs:complexContent mixed="false">
      <xs:extension base="xs:anyType">
        <xs:attribute name="type" type="xs:QName" use="required" />
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="Event">
    <xs:sequence>
      <xs:element name="SubscriptionID" type="xs:string" />
      <xs:element name="EventClass" type="xs:string" />
      <xs:element name="EventSource" type="xs:string" />
      <xs:element name="EventType" type="xs:string" />
      <xs:element name="EventData" type="tns:EventData" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="EventList">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="Event" type="tns:Event" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="EventQueueSummary">
    <xs:sequence>
      <xs:element name="Sequence" type="xs:long" />
      <xs:element name="LastModifiedTime" type="xs:dateTime" />
      <xs:element name="Count" type="xs:long" />
      <xs:element minOccurs="0" maxOccurs="1" name="EventSources" type="c:URIList" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="ExtendedEventData">
    <xs:sequence>
      <xs:element name="EventQueueSummary" type="tns:EventQueueSummary" />
      <xs:element name="EventList" type="tns:EventList" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="Read">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="CallbackURI" type="xs:anyURI" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="ReadResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="ReadResult" type="tns:EventList" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="ReadExtended">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="CallbackURI" type="xs:anyURI" />
        <xs:element minOccurs="0" name="Sequence" type="xs:long" />
        <xs:element minOccurs="0" name="IncludeSources" type="xs:boolean" />
        <xs:element minOccurs="0" name="DeleteEvents" type="xs:boolean" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="ReadExtendedResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="ReadExtendedResult" type="tns:ExtendedEventData" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="ReadSummary">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="CallbackURI" type="xs:anyURI" />
        <xs:element name="IncludeSources" type="xs:boolean" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="ReadSummaryResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="ReadSummaryResult" type="tns:EventQueueSummary" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="Delete">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="CallbackURI" type="xs:anyURI" />
        <xs:element name="Sequence" type="xs:long" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="DeleteResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="DeleteResult" type="xs:long" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>